var runtime.gcBitsArenas

35 uses

	runtime (current package)
		malloc.go#L489: 	lockInit(&gcBitsArenas.lock, lockRankGcBitsArenas)
		mheap.go#L1974: var gcBitsArenas struct {
		mheap.go#L2005: 	head := (*gcBitsArena)(atomic.Loadp(unsafe.Pointer(&gcBitsArenas.next)))
		mheap.go#L2012: 	lock(&gcBitsArenas.lock)
		mheap.go#L2016: 	if p := gcBitsArenas.next.tryAlloc(bytesNeeded); p != nil {
		mheap.go#L2017: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2026: 	if p := gcBitsArenas.next.tryAlloc(bytesNeeded); p != nil {
		mheap.go#L2029: 		fresh.next = gcBitsArenas.free
		mheap.go#L2030: 		gcBitsArenas.free = fresh
		mheap.go#L2031: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2043: 	fresh.next = gcBitsArenas.next
		mheap.go#L2044: 	atomic.StorepNoWB(unsafe.Pointer(&gcBitsArenas.next), unsafe.Pointer(fresh))
		mheap.go#L2046: 	unlock(&gcBitsArenas.lock)
		mheap.go#L2075: 	lock(&gcBitsArenas.lock)
		mheap.go#L2076: 	if gcBitsArenas.previous != nil {
		mheap.go#L2077: 		if gcBitsArenas.free == nil {
		mheap.go#L2078: 			gcBitsArenas.free = gcBitsArenas.previous
		mheap.go#L2081: 			last := gcBitsArenas.previous
		mheap.go#L2082: 			for last = gcBitsArenas.previous; last.next != nil; last = last.next {
		mheap.go#L2084: 			last.next = gcBitsArenas.free
		mheap.go#L2085: 			gcBitsArenas.free = gcBitsArenas.previous
		mheap.go#L2088: 	gcBitsArenas.previous = gcBitsArenas.current
		mheap.go#L2089: 	gcBitsArenas.current = gcBitsArenas.next
		mheap.go#L2090: 	atomic.StorepNoWB(unsafe.Pointer(&gcBitsArenas.next), nil) // newMarkBits calls newArena when needed
		mheap.go#L2091: 	unlock(&gcBitsArenas.lock)
		mheap.go#L2098: 	if gcBitsArenas.free == nil {
		mheap.go#L2099: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2104: 		lock(&gcBitsArenas.lock)
		mheap.go#L2106: 		result = gcBitsArenas.free
		mheap.go#L2107: 		gcBitsArenas.free = gcBitsArenas.free.next